const fs = require("fs");
// 读取文件的promise
function myReadFile(f1) {
  return new Promise((resolve, reject) => {
    fs.readFile(f1, (err, data) => {
      if (err) {
        reject(err);
        return console.log(err);
      }
      resolve(data);
    });
  });
}

// 写入文件的promise函数
function myWriteFile(data, f2) {
  return new Promise((resolve, reject) => {
    fs.writeFile(f2, data, (err) => {
      if (err) {
        reject(err);
        return console.log(err);
      }
      // console.log("写入成功");
      resolve();
    });
  });
}

myReadFile("../a.txt")
  .then(
    (res) => {
      // 成功了
      return myWriteFile(res, "../b.txt");
    },
    (err) => {
      // 错误了
      console.log(err);
    }
  )
  .then(
    () => {
      console.log("写入成功");
    },
    (err) => {
      // 写入失败了
      console.log(err);
    }
  );
